home *** CD-ROM | disk | FTP | other *** search
/ Acorn User: China / Acorn User China CD-ROM (UK) (Disc A) / Acorn User China CD-ROM (UK) (Disc A).bin / DEMON / DEVELOPER / NETCONF0.ARC / !NetConfig_Docs_Provider < prev    next >
Encoding:
Text File  |  1995-07-16  |  3.5 KB  |  86 lines

  1. A provider module foo must provide the following routines:
  2.  
  3. DEF FNfoo_init
  4.  
  5. required by core library system.  Load any libraries required, e.g. standard.
  6.  
  7.  
  8. DEF FNfoo_choices
  9.  
  10. This routine must set up the following variables:
  11.  
  12. net_domain$        Domain in which user accounts defined, e.g. "foo.co.uk"
  13. net_mail_server$    Name of machine serving mail, e.g. "post.foo.co.uk"
  14. net_news_server$    Name of machine serving news, e.g. "news.foo.co.uk"
  15. net_name_server1$    IP address of name server e.g. "194.80.132.3"
  16. net_ip_prefix$        Beginning of IP address to match e.g. "194.80"
  17.  
  18. It may also set the following to other than the defaults shown:
  19.  
  20. net_provider_variables$    A string naming a number of string variables (less the
  21.              final $) to be saved in the Choices file ("")
  22. net_mail_protocol$      "SMTP" or "POP" for mail download ("POP")
  23. net_ka9q_protocol$    Connection protocol, "slip" or "cslip" ("slip")
  24. net_fixed_ip$        "1" if fixed IP address ("")
  25. net_time_server$    Name of optional NTP time server ("")
  26. net_nsq_server$        NSQ server ("["+net_name_server1$+"]")
  27. net_router$        IP address of machine user is connected to ("")
  28. net_moderators$        Where to send moderated posts ("moderators.uu.net")
  29. net_news_prefix$    Prefix for news control files ("Net")
  30. net_name_server2/3$    Optional alternative name servers
  31. net_news_groups$    List of provider-specific news groups ("")
  32. net_slip_login_file$    SLIPdial fragment to perform login ("")
  33. If "" then uses a standard segment based on:
  34.  net_login_prompt$    Login prompt ("ogin:")
  35.  net_password_prompt$    Password prompt ("assword:")
  36.  net_protocol_prompt$    Protocol prompt ("otocol:") ("" implies none)
  37.  net_protocol_reply$    Protocol reply ("slip")
  38.  net_startup_prompt$    String sent before starting SLIP ("", implies none)
  39.  
  40. The routine should then get user details, I suggest by calling
  41. FNstandard_choices
  42.  
  43. If calling FNstandard_choices, it should also add to the Messages file:
  44. foo.PoPs:<pop list>    Comma-separated list of PoPs
  45. foo.<pop>:<number>    Phone number for each listed PoP
  46.  
  47. If not calling FNstandard_choices, then it must set these variables:
  48.  
  49. net_modem_driver$    Name of SLIPdial modem driver file
  50. net_serial_driver$    Name of serial block driver
  51. net_port$        Block driver port number
  52. net_speed$        Serial speed
  53. net_pop1$        Name of first choice (or only) PoP
  54. net_pop2$        Optional second choice PoP ("" if only 1)
  55. net_pop3$        Optional third choice PoP ("" if only 1 or 2)
  56. net_number1$        Phone number of first choice PoP
  57. net_number2$        Phone number of second PoP (if net_pop2$ <> "")
  58. net_number3$        Phone number of third PoP (if net_pop3$ <> "")
  59. net_account$        Name of user's account/node/userid
  60. net_mail_domain$    Domain for returned mail (if POP then net_domain$
  61.                 else net_account$+"."+net_domain$)
  62. net_ip_address$        IP address (if net_fixed_ip$>"")
  63. net_pulse_dial$        "1" if pulse dialling required ("")
  64. net_dial_prefix$    Prefix to use for dialling
  65. net_password$        Password needed to login ("" means enter at login)
  66. net_main_user$        Main user id
  67. net_real_name$        Real name of user
  68. net_organization$    Text for organization line
  69.  
  70. It return value should be
  71.  0    User has closed window
  72.  1    All OK, user wants to proceed
  73.  -1    User wants to go back to Initial window
  74.  
  75.  
  76. The module must also define
  77.     DEF FNfoo_configure
  78. to do the actual configuration.  This should return 1 if successful, 0 if the
  79. user closed the window or -1 if the user selected an Abort option.
  80. Easiest is:
  81.     DEF FNfoo_configure:=FNstandard_configure
  82.  
  83. If there are other things to be done, then it could call FNfoo_configure and 
  84. then do some more customisation (e.g. setting up a replacement TCPIP FTP menu
  85. to include a provider's own FTP site.
  86.